package com.pai4j.zwiki.dto;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;

/**
 * 项目分析响应DTO
 *
 * @author pai4j
 * @since 2025-10-12
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ProjectAnalysisResponse {

    /**
     * 任务ID
     */
    private String taskId;

    /**
     * 项目名称
     */
    private String projectName;

    /**
     * 分析状态
     */
    private String status;

    /**
     * 进度百分比
     */
    private Integer progress;

    /**
     * 当前处理步骤
     */
    private String currentStep;

    /**
     * 项目编程语言
     */
    private String primaryLanguage;

    /**
     * 总文件数
     */
    private Integer totalFiles;

    /**
     * Java文件数
     */
    private Integer javaFiles;

    /**
     * 总代码行数
     */
    private Long totalLines;

    /**
     * 错误信息
     */
    private String errorMessage;

    /**
     * 论文文件URL
     */
    private String thesisFileUrl;

    /**
     * 架构图文件URL
     */
    private String diagramFileUrl;

    /**
     * 创建时间
     */
    private LocalDateTime createdAt;

    /**
     * 完成时间
     */
    private LocalDateTime completedAt;
}

